package com.kitty.game.task.model.product;

/**
 * 任务目标
 */
public class TaskTarget implements Cloneable {
    /**任务目标在任务目标队列的下标*/
    private int targetIndex;

    /**目标类型*/
    private TaskTargetType taskTargetType;

    /**任务目标参数*/
    private TaskTargetParam taskTargetParam;

    /**弹出事件类型，比如进入场景时*/
    private TaskTargetPopType popType;

    /**弹出事件类型参数*/
    private Object popParam;

    /**执行类型*/
    private TaskTargetExecType execType;

    /**执行类型参数*/
    private Object execParam;

    @Override
    public TaskTarget clone() throws CloneNotSupportedException {
        return (TaskTarget)super.clone();
    }


    public int getTargetIndex() {
        return targetIndex;
    }

    public TaskTargetType getTaskTargetType() {
        return taskTargetType;
    }

    public TaskTargetParam getTaskTargetParam() {
        return taskTargetParam;
    }

    public TaskTargetPopType getPopType() {
        return popType;
    }

    public Object getPopParam() {
        return popParam;
    }

    public void setTargetIndex(int targetIndex) {
        this.targetIndex = targetIndex;
    }

    public void setTaskTargetType(TaskTargetType taskTargetType) {
        this.taskTargetType = taskTargetType;
    }

    public void setTaskTargetParam(TaskTargetParam taskTargetParam) {
        this.taskTargetParam = taskTargetParam;
    }

    public void setPopType(TaskTargetPopType popType) {
        this.popType = popType;
    }

    public void setPopParam(Object popParam) {
        this.popParam = popParam;
    }

    public TaskTargetExecType getExecType() {
        return execType;
    }

    public void setExecType(TaskTargetExecType execType) {
        this.execType = execType;
    }

    public Object getExecParam() {
        return execParam;
    }

    public void setExecParam(Object execParam) {
        this.execParam = execParam;
    }
}
